//
//  KVMutableSet.h
//  SolarSeek
//
//  Created by Erick Fejta on 05/05/21.
//  Copyright 2005 __MyCompanyName__. All rights reserved.
//

#import <Cocoa/Cocoa.h>

@interface NSMutableSet (DelayedObserving)
- (void)addObject:(id)object allowDelay:(NSTimeInterval)delay;
- (void)removeObject:(id)object allowDelay:(NSTimeInterval)delay;
@end


@interface KVMutableSet : NSObject {
	NSMutableArray *_array;
	NSMutableArray *_pendingIn;
	NSMutableArray *_pendingOut;
	NSMutableSet *_set;
	NSTimeInterval _defaultDelay;
}

- (id)init;
- (id)initWithDefaultDelay:(NSTimeInterval)delay;

- (unsigned)count;
- (unsigned)countOfValues; //kvc compatible.
- (NSArray *)values;	//kvc compatible.

- (NSMutableSet *)mutableSet;


- (NSTimeInterval)defaultDelay;
- (void)setDefaultDelay:(NSTimeInterval)delay;


@end
